#pragma once
#include "../lua/ELuna.h"
#include "../gge/ggefont.h"
#include "../gge/ggebase.h"
using namespace ELuna;
namespace gge { typedef guint32 gUInt; }
extern lua_State*	L ;
class LuaFont
{
public:
	LuaFont(const char *filename, int fontSize, int mode);
	~LuaFont();
	UINT		Clone();
	void		Render(float x, float y, const char *str);
	void		SetColor(UINT color);
	void		SetZ(float z);
	void		SetBlendMode(int blend);
	void		SetLineWidth(int width);
	void		SetCharSpace(int width);
	void		SetLineSpace(int width);
	void		SetCharNum(int width);
	void		SetAlign(int width);
	void		SetShadowColor(UINT width);
	void		SetBorderColor(UINT width);
	UINT		GetColor();
	float		GetZ();
	int			GetBlendMode();
	int			GetLineWidth();
	int			GetCharSpace();
	int			GetLineSpace();
	int			GetFontHight();
	int			GetFontSize();
	int			GetCharNum();
	int			GetAlign();
	UINT		GetShadowColor();
	UINT		GetBorderColor();
	LuaTable	GetStringInfo(const char *str);
	UINT		GetP();
	int			GetRefCount();
	void		AddRef();
	void		Release();
private:
	gge::ggeFont* m_font;
};